Skip to content

Release: Emulsify Tools (2.2.0)#16

Open
callinmullaney wants to merge 9 commits into
mainfrom
release-2.2.0
Open

Release: Emulsify Tools (2.2.0)#16
callinmullaney wants to merge 9 commits into
mainfrom
release-2.2.0

Conversation

@callinmullaney

@callinmullaney callinmullaney commented Jul 11, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Release Emulsify Tools 2.2.0.
  • Replace the custom Drush child-theme copy, extraction, and customization pipeline with Drupal core’s Starterkit GenerateTheme command.
  • Keep drush emulsify_tools:bake and drush emulsify as equivalent commands while adding support for --name and --description.
  • Preserve human-readable positional names, including automatic normalization from values such as "My Theme" to my_theme.
  • Ensure the Drush command produces byte-identical output to Drupal core’s generate-theme command when given the same machine name, display name, and description.
  • Simplify the Drush service definition and deprecate StarterRecipeArchiveExtractor and SubThemeGenerator for removal in Emulsify Tools 3.0.0.
  • Update documentation, unit tests, and the generation smoke test for the Emulsify Drupal 7.x Starterkit workflow.

Related Issue(s)

Validation

  • PHP syntax lint on PHP 8.3, 8.4, and 8.5
  • composer lint:phpcs
  • composer test:unit against Drupal 11.3 and Drupal 12.x-dev
  • composer test:deprecations
  • .github/scripts/generation-smoke.sh
  • Manual Drupal verification

Notes

  • Emulsify Tools ^2.0 is intended to pair with Emulsify Drupal ^7.0 for child-theme generation and favicon workflows.
  • The Drush commands now act as wrappers around Drupal core Starterkit generation using the whisk source theme.
  • Existing destination directories continue to be rejected rather than overwritten.
  • Generated child themes include project.emulsify.json and exclude Starterkit-only metadata and source files after generation.
  • StarterRecipeArchiveExtractor and SubThemeGenerator remain available for backward compatibility in the 2.x line but are no longer used by the Drush generation command. They are scheduled for removal in 3.0.0.

Security

  • Theme generation now relies on Drupal core’s validation and filesystem handling instead of the custom archive and copy pipeline.
  • The command restores the original working directory after generation, including when generation fails.
  • No new remote input or archive-handling behavior is introduced.

Accessibility

  • This PR does not directly change user-interface or Twig markup.
  • The generation mechanism changes, but its output is tested for parity with Drupal core Starterkit generation. No manual accessibility review is expected.

@callinmullaney callinmullaney changed the title fix(generator): align Drush output with Drupal StarterKit Release: Emulsify Tools (2.2.0) Jul 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant